The present invention relates to connecting a plurality of edge devices to each other over a plurality of lines, and in particular through a plurality of trunk switches where the trunk switches have a high speed connection between them.
In a computer network, devices communicate with each other over links. The amount of information or data that can be transmitted over a link, is limited by the bandwidth of the link. Different types of links, such as twisted pair, shielded twisted pair, coaxial and fiber-optic, have different amounts of bandwidth. Generally the larger the bandwidth of a link, the more expensive the cost per length of the link, and the difficulty in using the link. Presently, the rate at which information or data is desired between devices is much higher than the bandwidth of existing links, or economically practical links. Furthermore, it is foreseen that the desired data rates will constantly and significantly increase, while increasing the bandwidth of a link is seen to be much more difficult in the future.
One possibility for increasing the data rate between two devices is to use a plurality of links. This is especially beneficial in computer networks where the information to be transported is divided into a plurality of packets. The packets are then divided over the plurality of links and the data rate of the connection is substantially the sum of the data rate that each link can transfer.
The plurality of combined links are known as trunked lines or links. Trunked lines or links are useful when two separate devices need to communicate directly with each other at high data rates.
However, if three or more devices, and possibly tens or hundreds of devices, desire, or require, a high data rate connection, the use of a plurality of trunk lines by themselves would not be particularly effective.
Applicant""s U.S. Pat. Nos. 6,195,351 B1, 6,195,349 B1, 6,058,116 and 6,145,010, and are incorporated by reference. In these applications, a trunking arrangement is described where each device is connected to a plurality of trunk switches. The devices are called edge devices and the data to be transferred is divided into packets with destination addresses.
Each trunk switch has a plurality of ports for connecting to all of the edge devices. Packets received on a port are analyzed to determine which port the packet should be sent out on to reach its destination device. Each trunk switch can therefore receive packets from all the edge devices and properly forward the packets to all the edge devices.
An edge device can therefore divide its packets of information among the trunk links and switches. All the packets will then reach the proper destination device, and the data rate will be the sum of the data rate of all the trunk links and switches.
The links connecting each edge device to each trunk switch, and the plurality of trunk switches form a packet based high speed mesh, called a trunk cluster. As described in the copending patent applications, this trunk cluster can be constructed with a set of loosely coupled switches, a configuration protocol, trunk network interfaces and optionally a reachability protocol.
Each switch, called a Trunk Switch, in a trunk cluster, provides a single xe2x80x9cshared LANxe2x80x9d by interconnecting two or more links. The attached edge devices connect to a Trunk Cluster via trunked links with either basic trunking or trunking enhanced with station reachability. Basic Trunking requires at least one physical connection to each switch (1 through N) in the Trunk Cluster. As described in application Ser. No. 09/014,548 each switch in the trunk cluster provides a single shared LAN by interconnecting two or more links. The edge devices attached to the links run a trunk configuration protocol. These attached edge devices view each physical link within a trunked port as if the attached device is connected to a shared logical LAN with multiple other attached devices. Each Trunk Switch maintains a list of identifiers that uniquely identify each edge device that is connected to it. The identifier is called the Trunk Port Identifier (TPI). It builds this list up by monitoring the trunk configuration protocol packets that are transmitted by the edge devices. The trunk switch builds TPI to Link map that relates the switch""s link identifiers to the TPIs.
A difficulty with these trunk clusters occurs when one of the edge devices loses its connection to one of the trunk switches. In order to maintain the trunking arrangement operational for all edge devices, the trunk switch having the connection problem is effectively removed from the trunk cluster. This allows the trunking arrangement to continue proper operation. However losing this trunk switch causes the bandwidth of the trunk cluster to decrease, which correspondingly lowers the data rate of all the edge devices, due to one edge device losing a link to one trunk switch.
It is a primary object of the present invention to provide a trunking arrangement with a plurality of trunk switches, where a failure of one or more links from an edge device to a trunk switch does not require that the entire trunk switch be removed from the trunking arrangement. The present invention allows the trunk switch to remain in the trunk cluster and to continue forwarding packets of data.
The present invention accomplishes this objective by providing a particular type of trunk switch in the trunk cluster. This trunk switch has a plurality of edge ports for separately connecting to each of the plurality of edge devices by a separate edge link. An address database means is located in the trunk switch for indicating a correspondence of the edge ports to the edge devices. A first or normal switch means in the trunk switch reads the data from each of the edge ports, and consults the address database means to determine which edge port to send the received data out on. The first switch means then transfers the received data to the determined edge port.
The trunk switch of the present invention also includes an intra-cluster port for connecting the individual trunk switches to each other through an intra-cluster link. A second or uni-direct switch means reads intra-cluster data from said intra-cluster port and consults the address database means to determine which edge port to send the intra-cluster data out on. The second switch means then transfers the intra-cluster data to the determined edge port. The trunk switch also has a control means for detecting when an edge device has become disconnected. The control means then modifies the address database means to redirect data for the disconnected edge device to the intra-cluster port for transmission to another trunk switch.
The edge ports and the intra-cluster port transfer the data packets in a substantially identical manner. Also the data packets transferred over the intra-cluster ports and links are transferred at substantially the same data rate as the data packets transferred over the edge ports and edge links.
In particular the first switch means creates a transmit only connection from the first switch means to the intra-cluster port when the control means detects said disconnected edge device. Correspondingly the another trunk switch creates a transmit only connection from the second switch means to the port of an edge device which corresponds to a disconnected edge device of another trunk switch which sent the intra-cluster data.
Since each trunk switch can forward data packets for a disconnected edge device to another trunk switch, and an edge device which is disconnected from one trunk switch can still transmit to another trunk switch, the trunk switch having a disconnected edge device does not need to be removed from the trunking arrangement of the present invention. Therefore while the data rate will be reduced for the edge device which has been disconnected from the trunk switch, the data rates for the remaining edge devices will not be significantly reduced, if reduced at all. The present invention is therefore able to provide a trunking arrangement which is more beneficial in the case of a failure of one of the edge links, and is an improvement in computer networking.
The various features of novelty which characterize the invention are pointed out with particularity in the claims annexed to and forming a part of this disclosure. For a better understanding of the invention, its operating advantages and specific objects attained by its uses, reference is made to the accompanying drawings and descriptive matter in which a preferred embodiment of the invention is illustrated.